﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using estudent.Models;

namespace estudent.Controllers
{
    public class IzpitniRokiController : Controller
    {
        //estudentEnt db = new estudentEnt();
        ////
        //// GET: /IzpitniRoki/

        //public ActionResult Index()
        //{
        //    //username prijavljenega studenta
        //    var studUser = Session["Name"].ToString();
        //    Studenti student = db.Studentis.First(s => s.username == studUser);
            

        //    var prijave = from p in db.PrijaveNaIzpits
        //    //where (p.ocena == null || p.ocena < 6) && p.Vpisi.username == studUser
        //     orderby p.datumRoka
        //      select p;

        //    int rows = prijave.Count();

        //    #region init
        //    // 0-letnik|1-ime predmeta|2-datum|3-predavalnica|4-profesorji|5-3daysCheck(true if več kot 3 dni away)|6-2late(today > datum)
        //    string[] letnika = new string[rows];
        //    string[] predmeti = new string[rows];
        //    string[] datum = new string[rows];
        //    string[] threeDays = new string[rows];
        //    string[] late = new string[rows];
        //    string[] predavalnica = new string[rows];
        //    string[] sprofesorjev = new string[rows];

        //    int iii = 0;

        //    #endregion

        //    foreach (var prijava in prijave)
        //    {
        //        #region letnik
        //        string letnik = "";

        //        letnika[iii] = letnik;
        //        #endregion

        //        #region ime predmeta
        //        var pred = from p in db.sPredmetis
        //                   where p.sPredmeta == prijava.sPredmeta
        //                   select p.imePredmeta;

        //        predmeti[iii] = pred.First().ToString();
        //        #endregion

        //        #region predavalnica

        //        // ?
        //        predavalnica[iii] = "";

        //        #endregion

        //        #region datum stuff
        //        DateTime datumRoka = prijava.datumRoka;
        //        string sdatum = datum.ToString();
        //        DateTime danes = DateTime.Today;
        //        string threeDayCheck = "false";
        //        string tooLate = "false";

        //        datum[iii] = datumRoka.ToString();

        //        // 3 dnevni rok
        //        if (danes.AddDays(3) < datumRoka)
        //            threeDayCheck = "true";

        //        threeDays[iii] = threeDayCheck;

        //        // rahlo prepozno
        //        if (danes > datumRoka)
        //            tooLate = "true";

        //        late[iii] = tooLate;
        //        #endregion

        //        #region seznam profesorjev
        //        var prof = from p in db.SProfesorjis
        //                   where p.sProfesor == prijava.sProfesor
        //                   select p;

        //        string seznamProfesorjev = "";

        //        foreach (var profesor in prof)
        //        {
        //            seznamProfesorjev = profesor.imeProfesor + " " + profesor.priimekProfesor + ", ";
        //        }

        //        // odstranimo zadnji ", "
        //        seznamProfesorjev = seznamProfesorjev.Substring(0, seznamProfesorjev.Length - 2);

        //        sprofesorjev[iii] = seznamProfesorjev;
        //        #endregion

        //        iii++;
        //    }

        //    #region odstrani stare izpite
        //    int st = 0;
        //    for (int j = 0; j < rows; j++)
        //        if (late[j].Equals("false"))
        //            st++;

        //    string[,] data = new string[st, 7];
        //    int st2 = 0;

        //    for (int j = 0; j < rows; j++)
        //    {
        //        if (late[j].Equals("false"))
        //        {
        //            data[st2, 0] = letnika[j];
        //            data[st2, 1] = predmeti[j];
        //            data[st2, 2] = datum[j];
        //            data[st2, 3] = threeDays[j];
        //            data[st2, 4] = late[j];
        //            data[st2, 5] = predavalnica[j];
        //            data[st2, 6] = sprofesorjev[j];
        //            st2++;
        //        }
        //    }
        //    #endregion

        //    #region test data
        //    string[,] testData = new string[4, 7];
        //    //0-letnik|1-ime predmeta|2-datum|3-predavalnica|4-profesorji|5-3daysCheck(true if več kot 3 dni away)|6prijavljen
        //    testData[0, 0] = "3";
        //    testData[0, 1] = "Ekonomika Poslovanja";
        //    testData[0, 2] = "5.6.2011";
        //    testData[0, 3] = "P1";
        //    testData[0, 4] = "Mihelčič";
        //    testData[0, 5] = "true";
        //    testData[0, 6] = "true";

        //    testData[1, 0] = "3";
        //    testData[1, 1] = "Ekonomika Poslovanja";
        //    testData[1, 2] = "17.6.2011";
        //    testData[1, 3] = "P2";
        //    testData[1, 4] = "Mihelčič";
        //    testData[1, 5] = "true";
        //    testData[1, 6] = "false";

        //    testData[2, 0] = "3";
        //    testData[2, 1] = "Ekonomika Poslovanja";
        //    testData[2, 2] = "30.8.2011";
        //    testData[2, 3] = "P1";
        //    testData[2, 4] = "Mihelčič";
        //    testData[2, 5] = "true";
        //    testData[2, 6] = "false";

        //    testData[3, 0] = "4";
        //    testData[3, 1] = "ZVRS";
        //    testData[3, 2] = "17.9.2011";
        //    testData[3, 3] = "P19";
        //    testData[3, 4] = "Zimic";
        //    testData[3, 5] = "false";
        //    testData[3, 6] = "true";
        //    #endregion

        //    #region linkedlist stuff
        //    LinkedList<Predmet> dataLL = new LinkedList<Predmet>();

        //    for (int i = 0; i < 4; i++)
        //    {
        //        // linked list je na začetku prazen
        //        // zaradi nullpointerja stuff
        //        if (i == 0)
        //        {
        //            Predmet pr = new Predmet(testData[i, 0], testData[i, 1], testData[i, 4]);
        //            pr.addInfo(testData[i, 2], testData[i, 3], testData[i, 5], testData[i, 6]);

        //            dataLL.AddLast(pr);
        //        }
        //        else
        //        {
        //            string tmpPredmet = testData[i, 1];

        //            for (int j = 0; j < dataLL.LongCount(); j++)
        //            {
        //                // če predmet že obstaja v LL dodamo samo nov izpitni rok.
        //                if (String.Equals(tmpPredmet, dataLL.ElementAt(j).GetImePredmeta()))
        //                {
        //                    dataLL.ElementAt(j).addInfo(testData[i, 2], testData[i, 3], testData[i, 5], testData[i, 6]);
        //                }
        //                else
        //                {
        //                    Predmet pr = new Predmet(testData[i, 0], testData[i, 1], testData[i, 4]);
        //                    pr.addInfo(testData[i, 2], testData[i, 3], testData[i, 5], testData[i, 6]);

        //                    dataLL.AddLast(pr);
        //                }
        //            }
        //        }
        //    }


        //    #endregion

        //    #region viewdata
        //    ViewData["dataLL"] = dataLL;
        //    ViewData["st"] = 4;//st2 - 1;
        //    //ViewData["data"] = data;
        //    ViewData["data"] = testData;
        //    #endregion

        //    return View("SeznamIzpitnihRokov");
        //}
    }
}
